Type generic observation of intermediate data structures for debugging lazy functional programs
نویسندگان
چکیده
منابع مشابه
Declarative Debugging of Lazy Functional Programs
We show how declarative (or algorithmic) debugging can be applied to lazy functional programming and describe a prototype implementation. We rst present a declarative debugger for logic programs which relies on three primitives that determine if an atom is valid in the intended interpretation, return the successful clause instance used by a call and return single atoms from a conjunction of ato...
متن کاملLazy SETL Debugging with Persistent Data Structures
To my parents and v Acknowledgments This is a good opportunity for me to thank the people who have contributed to the thesis. It is difficult to imagine that I could complete my research work without the contributions of these people. I am greatly indebted to my research advisor, Jack Schwartz. He has been my mentor and motivator since I started to work with him three years ago. His interest, i...
متن کاملA Declarative Debugging System for Lazy Functional Logic Programs
We present a declarative debugger for lazy functional logic programs with poly-morphic type discipline. Whenever a computed answer is considered wrong by theuser (error symptom), the debugger locates a program fragment (function definingrule) responsible for the error. The notions of symptom and error have a declara-tive meaning w.r.t. to an intended program semantics. Debug...
متن کاملDebugging Haskell by Observing Intermediate Data Structures
Haskell has long needed a debugger. Although there has been much research into the topic of debugging lazy functional programs, no robust tool has yet come from the Haskell community that can help debug full Haskell until now. This paper describes a portable debugger for full Haskell, building only on commonly implemented extensions. It is based on the concept of observation of intermediate dat...
متن کاملDebugging Lazy Functional Programs by Asking the Oracle
The complexity of lazy evaluation forbids classic debugging techniques like a simple step-by-step representation of the buggy program run. Therefore, most sophisticated tools for searching bugs in lazy functional programs try to display the run as if the program’s underlying semantics was strict. In order to provide such a strict representation current approaches gather much information about t...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Computer Languages, Systems & Structures
سال: 2018
ISSN: 1477-8424
DOI: 10.1016/j.cl.2017.05.001